gusucode.com > VC++ 宾馆管理系统(MSSQL) > VC++ 宾馆管理系统(MSSQL)/gusucode/Code/CheckRoomDLG.cpp
//Download by http://www.NewXing.com // CheckRoomDLG.cpp : implementation file // #include "stdafx.h" #include "hotel_mis.h" #include "CheckRoomDLG.h" #include "Hotel_MISView.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CCheckRoomDLG dialog CCheckRoomDLG::CCheckRoomDLG(CWnd* pParent /*=NULL*/) : CDialog(CCheckRoomDLG::IDD, pParent) { //{{AFX_DATA_INIT(CCheckRoomDLG) m_sNo = _T(""); m_bNoChecked = true; m_bTypeChecked = FALSE; m_sType = _T(""); //}}AFX_DATA_INIT } void CCheckRoomDLG::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CCheckRoomDLG) DDX_Text(pDX, IDC_CHECKROOM_NO, m_sNo); DDX_Check(pDX, IDC_CHECKROOM_NOCHEK, m_bNoChecked); DDX_Check(pDX, IDC_CHECKROOM_TYPECHEK, m_bTypeChecked); DDX_CBString(pDX, IDC_CHECKROOM_TYPE, m_sType); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CCheckRoomDLG, CDialog) //{{AFX_MSG_MAP(CCheckRoomDLG) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CCheckRoomDLG message handlers void CCheckRoomDLG::OnOK() { // TODO: Add extra validation here UpdateData(true); if ( !m_bNoChecked && !m_bTypeChecked) { AfxMessageBox(_T("请选择查询条件!"), MB_ICONEXCLAMATION); return; } m_sNo.TrimRight(" "); m_sType.TrimRight(" "); if ( m_bNoChecked ) { if ( ""==m_sNo ) { AfxMessageBox(_T("客房编号条件不能为空!"), MB_ICONEXCLAMATION); return; } } else m_sNo="%"; if ( !m_bTypeChecked ) m_sType = "%"; if ( _T("所有房间类型")==m_sType ) m_sType = "%"; // Refresh Room _variant_t strQuery; strQuery = "select * from rooms where roomNo like '"+m_sNo+"' and roomType like '"+m_sType+"'"; CHotel_MISView* p = (CHotel_MISView*)(((CMainFrame*)AfxGetMainWnd())->GetActiveView()); p->RefreshRoom(strQuery); } BOOL CCheckRoomDLG::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here // Init Combobox ((CComboBox*)GetDlgItem(IDC_CHECKROOM_TYPE))->InsertString(0, _T("所有房间类型")); _variant_t strQuery, Holder; strQuery = "select typename from roomtype"; theApp.ADOExecute(theApp.m_pADOSet, strQuery); int iCount = theApp.m_pADOSet->GetRecordCount(); theApp.m_pADOSet->MoveFirst(); for (int i=0; i<iCount; i++) { Holder = theApp.m_pADOSet->GetCollect("typename"); ((CComboBox*)GetDlgItem(IDC_CHECKROOM_TYPE))->InsertString(i+1, Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder); theApp.m_pADOSet->MoveNext(); } ((CComboBox*)GetDlgItem(IDC_CHECKROOM_TYPE))->SetCurSel(0); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE }